Electronic device with serial ATA interface and signal amplitude adjusting method

ABSTRACT

The CPU of an electronic device generates a parameter for determining the amplitude of a serial data signal when it is output from an output device to a serial ATA bus. The parameter indicates a value that is needed to make the amplitude of the received serial data signal fall within a range, stipulated in serial ATA interface standards, when another electronic device receives the serial data signal. The parameter is generated in accordance with the cable length of the serial ATA bus designated by a cable length designation unit. The other electronic device is connected to the serial ATA bus.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority fromprior Japanese Patent Application No. 2003-286799, filed Aug. 5, 2003,the entire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an electronic device for seriallytransferring data using a serial ATA (ATA attachment) interface. Moreparticularly, it relates to an electronic device and signal amplitudeautomatic adjustment method utilizing a serial ATA interface suitablefor automatically adjusting the amplitude of a serial data signal,output to a serial ATA bus, in light of the signal attenuation of theserial ATA bus.

2. Description of the Related Art

At present, standards for serial ATA interfaces as a new type ofinterface for use in disk drives are now being worked out. Serial ATAinterfaces are used as an interface between a peripheral device,represented by a magnetic disk drive, and a host (host system)represented by a personal computer. In this point, serial ATA interfacesare similar to conventional ATA interfaces (i.e., parallel ATAinterfaces).

A peripheral device with a serial ATA interface, such as a magnetic diskdrive (hereinafter referred to as an “HDD”), is connected to a host by aserial bus. In such an HDD, to secure compatibility with an ATAinterface, it is necessary to convert an ATA interface into a serial ATAinterface, and convert a serial ATA interface into an ATA interface.Such interface conversion is performed by, for example, an LSI (bridgeLSI) called a serial ATA bridge.

In the serial ATA interface standards, three layers of differentfunctions, i.e., a physical layer, link layer and transport layer, aredefined. The physical layer has a function for executing high-rateserial data transmission and reception. The physical layer interpretsreceived data, and transmits the data to the link layer in accordancewith an interpretation result. The physical layer also outputs a serialdata signal to the link layer in response to a request therefrom. Thelink layer supplies the physical layer with a request to output asignal. The link layer also supplies the transport layer with the datatransmitted from the physical layer. The transport layer performsconversion for operations based on the ATA standards. Assuming that theabove-mentioned bridge LSI is used in an HDD, the role of the transportlayer corresponds to the role of the ATA signal output unit of aconventional host that utilizes ATA connection. The bridge LSI isconnected to the disk controller (HDC) of the HDD via an ATA bus (or abus compliant with the ATA bus) based on the ATA interface standards.Accordingly, in the connection between the bridge LSI and HDC of theHDD, operations equivalent to those stipulated in the ATA interfacestandards or compatible with the standards are performed. In this case,the portion of the HDD excluding the bridge LSI (hereinafter referred toas a “main HDD unit”) regards the bridge LSI as an apparatus (host) forissuing a command to the main HDD unit. Accordingly, the main HDD unitoperates in the same manner as a conventional HDD utilizing ATAconnection. Thus, the serial ATA interface is compatible with the ATAstandards concerning protocols such as logical commands. However, a datasignal (parallel data signal) processed by a parallel ATA interface mustbe converted into a serial data signal.

The serial ATA interface standards stipulate that a cable with a lengthof 1 m, at maximum, can be used for data transfer using a serial ATAinterface. Further, the serial ATA interface standards sets the maximumand minimum amplitudes of a signal at the receive side to 600 mV and 325mV, respectively. Actually, however, when apparatuses are connectedusing a serial ATA interface, attenuation in a data signal due to thecable (serial ATA bus) used must be considered. That is, a data signaloutput from a transmitter that uses a serial ATA interface attenuateswhile passing through the cable (serial ATA bus). As a result, theamplitude of the data signal is inevitably reduced when it is receivedby a receiver. Thus, when the amplitude of a signal output from atransmitter is determined so that at the receive side, it falls withinthe range stipulated in the serial ATA interface standards, attenuationdue to the cable must be considered.

Assume here that the amplitude of a signal output from a transmitter isset in light of maximum signal attenuation that occurs when a cable of 1m is connected between the transmitter and receiver, so that at thereceive side, it falls within the standard range. Assume also that thetransmitter is actually connected to the receiver by a very short cable(serial ATA bus). In this case, the attenuation of a signal due to thecable is smaller than the assumed maximum attenuation, therefore theactual signal amplitude at the receiver is higher than in the maximumsignal attenuation case. As a result, the amplitude of a signal receivedmay well be higher than the reference (standard) value, which mayadversely influences the receiver. On the other hand, if a long cable isused where the amplitude of a signal output from a transmitter is set inlight of a short cable, the amplitude of a signal received may be lowerthan the reference value.

The above-described case where an assumed cable length differs from anactual one can occur when the apparatus to which a serial ATA interfaceis connected is, for example, a small-size HDD (magnetic disk drive).This is for the following reasons: Firstly, a small-size HDD can be usednot only as a storage for a desktop computer, like a large-size HDD, butalso as a storage for a portable electronic device, such as anotebook-type personal computer. Thus, a small-size HDD can be used invarious occasions. If an HDD is used as a storage for a portableelectronic device, the space for the HDD is generally small. In thiscase, the degree of freedom of selecting the length of a cable connectedbetween the HDD and electronic device is low. For example, if a 2.5-inchHDD is used as a storage for a notebook-type personal computer, the HDDis directly connected to the computer without a cable. Thus, in the caseof a small HDD, it is necessary to change the length of the cable used,depending upon the situation. In other words, the cable length cannot beset in advance. This is an example of the above-mentioned case where theassumed cable length differs from the actual one.

Jpn. Pat. Appln. KOKAI Publication No. 2000-341177 (hereinafter referredto as a “prior art document”) discloses an image signal transmissionapparatus that allows a user to adjust the amplitude of a signal inaccordance with the length of a cable. In this apparatus, when the useractivates application software for setting a cable length, a selectiondialog box for allowing the user to designate a cable length isdisplayed. If the user selects a desired cable length from the selectiondialog box, an amplitude control command corresponding to the selectedcable length is issued. Upon receiving this command, a graphicscontroller outputs an amplitude control signal corresponding to thecommand. In response to the amplitude control signal, an amplitudecontrol circuit at a transmit side controls the amplitude of an imagesignal output from the transmit side to the cable.

As described above, in the image signal transmission apparatus describedin the prior art document, the amplitude of an image signal (outputsignal) output from the transmit side to the cable can be adjusted inaccordance with a cable length designated by a user. However, the priorart document merely describes that the amplitude of an image signal isadjusted to a lower one or higher one of two values, depending uponwhether 3 m or 10 m is selected as the cable length. In other words, theprior art document does not specify the two values, and does notdescribe how the adjustment is performed in accordance with the cablelength. Accordingly, even if the image signal amplitude adjustmenttechnique (prior technique) described in the prior art document isemployed in a system in which electronic devices are connected viaserial ATA interfaces, it is still difficult to make the amplitude of aninput signal (received signal) at a receive side fall within the rangestipulated in the serial ATA interface standards.

BRIEF SUMMARY OF THE INVENTION

In accordance with embodiments of the invention, there is provided anelectronic device with a serial ATA interface having a signal outputdevice which outputs a serial data signal to a serial ATA bus whichconnects the electronic device to another electronic device. The anotherelectronic device including another serial ATA interface; a cable lengthdesignation device for designating a cable length of the serial ATA busin accordance with a user operation; an amplitude parameter generationdevice for generating, in accordance with the cable length designated bythe cable length designation device, an amplitude parameter fordetermining an amplitude of the serial data signal when the signaloutput device outputs the serial data signal, the amplitude determinedby the amplitude parameter enabling the amplitude of the serial datasignal to fall within a range, stipulated in serial ATA interfacestandards, when the another electronic device receives the serial datasignal. The another electronic device also includes a signal amplitudeadjusting device for adjusting the serial data signal to the amplitudedetermined by the amplitude parameter, when the signal output deviceoutputs the serial data signal.

In accordance with other embodiments of the invention, there is provideda system comprising a first electronic device with a serial ATAinterface; a second electronic device with a serial ATA interface; and aserial ATA bus connecting the first electronic device to the secondelectronic device. The first electronic device includes a first signaloutput unit for outputting a first serial data signal to the serial ATAbus; and a first signal amplitude adjusting device for adjusting thefirst signal output unit to make the first serial data signal have anamplitude determined by a received amplitude parameter when the firstsignal output unit outputs the first serial data signal. The secondelectronic device includes a second signal output unit for outputting asecond serial data signal to the serial ATA bus; a cable lengthdesignation device for designating a cable length of the serial ATA busin accordance with a user operation; an amplitude parameter generationdevice for generating, in accordance with the cable length designated bythe cable length designation device, an amplitude parameter fordetermining an amplitude of the second serial data signal when thesecond signal output unit outputs the second serial data signal, theamplitude determined by the amplitude parameter enabling the amplitudeof the second serial data signal to fall within a range, stipulated inserial ATA interface standards, when the first electronic devicereceives the second serial data signal output from the second signaloutput unit; a second signal amplitude adjusting device for adjustingthe second signal output unit to make the second serial data signal havean amplitude determined by the amplitude parameter when the secondsignal output unit outputs the second serial data signal; and the secondsignal output unit transferring a particular command to the firstelectronic device via the serial ATA bus, the particular commandincluding the amplitude parameter generated by the amplitude parametergeneration device, the particular command being used to supply theamplitude parameter included therein to the first signal amplitudeadjusting device of the first electronic device as the receivedamplitude parameter.

In accordance with yet further embodiments of the invention, there isprovided a method of adjusting an amplitude of a serial data signal,employed in a system in which a first electronic device with a serialATA interface is connected to a second electronic device with a serialATA interface by a serial ATA bus. The first electronic device includesan signal output device for outputting a serial data signal to theserial ATA bus, and a signal amplitude adjusting device for adjusting anamplitude of the serial data signal in accordance with an amplitudeparameter when the signal output device outputs the serial data signal.The method comprises generating, in accordance with a cable lengthdesignated by a user operation, an amplitude parameter for determiningthe amplitude of the serial data signal when the signal output deviceoutputs the serial data signal, the amplitude determined by theamplitude parameter enabling the amplitude of the serial data signal tofall within a range, stipulated in serial ATA interface standards, whenthe second electronic device receives the serial data signal; andsetting the generated amplitude parameter in the signal amplitudeadjusting device.

In accordance with yet further embodiments of the invention there isprovided an electronic device with a serial ATA interface, having asignal output device which includes a processing unit for convertingserial data to parallel data and parallel data to serial data, thesignal output device outputting a serial data signal to a serial ATA buswhich connects the electronic device to another electronic device, theanother electronic device including another serial ATA interface; acable length designation device for designating a parameterrepresentative of a cable length of the serial ATA bus in accordancewith a user operation; and a device, responsive to the designatedparameter representative of cable length, for adjusting an amplitude ofthe serial data signal transmitted from the outputting device such thatthe amplitude of the serial data signal received by the anotherelectronic device falls within a range, stipulated by a serial ATAinterface standard.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention, andtogether with the general description given above and the detaileddescription of the embodiments given below, serve to explain theprinciples of the invention.

FIG. 1 is a block diagram illustrating the configuration of a systemwith a magnetic disk drive (HDD) according to an embodiment of theinvention;

FIG. 2 is a circuit diagram illustrating the jumper unit 121 appearingin FIG. 1;

FIG. 3 is a table illustrating combinations of the states of the jumpers121A and 121B appearing in FIG. 2, and the relationship between eachstate and a cable length;

FIG. 4 is a table illustrating a data structure example of the gaintable 123 a appearing in FIG. 1;

FIG. 5 is a graph illustrating the relationship between the amplitude ofa data signal received at a receive side and the cable length of a SATAbus 30, if the amplitude of the data signal is 400 mV when it is outputfrom a transmit side;

FIG. 6 is a flowchart useful in explaining a procedure employed in theembodiment for setting, in a register 103, a gain determined from acable length indicated by the state of the jumper unit 121; and

FIG. 7 is a flowchart useful in explaining a procedure, according to amodification of the embodiment, for setting a gain by a main host unit21.

DETAILED DESCRIPTION OF THE INVENTION

A system equipped with a magnetic disk drive having a serial ATA (SATA)interface, according to an embodiment of the invention, will bedescribed in detail with reference to the accompanying drawings. FIG. 1is a block diagram illustrating the configuration of the system with themagnetic hard disk drive (HDD) according to the embodiment of theinvention. As shown, an HDD 10 comprises a serial ATA (SATA) bridge 100,as well as a main HDD unit (everything except the bridge 100) having aconfiguration corresponding to that of a conventional HDD that performsparallel data transmission using an ATA interface. The SATA bridge 100is formed of, for example, a one-chip large-scale integrated circuit(LSI). The SATA bridge (bridge LSI) 100 serves as an SATA interfacecontrol circuit for performing interface conversion between an ATAinterface and SATA interface.

The SATA bridge 100 is connected to a host 20 via a serial ATA (SATA)bus 30. The host 20 is an electronic device that utilizes the HDD 10 asstorage. The host 20 is, for example, a personal computer. The length ofthe SATA bus 30 depends upon the way of use of the HDD 10. In otherwords, the length of the SATA bus 30 varies depending upon whether thehost 20 is a notebook personal computer or desktop personal computer.The SATA bus 30 can be formed of a cable (electric wire) or wiringpattern. The wiring pattern may be formed on, for example, the printedcircuit board of the host 20. In this embodiment, the length of the SATAbus 30 is called a cable length, regardless of whether the SATA bus 30is formed of a cable or wiring pattern. The SATA bridge 100 is alsoconnected to an HDC 119, described later, contained in the HDD 10, viaan ATA bus 120 that conforms to the ATA interface standards.

The SATA bridge 100 comprises a physical layer processing unit 101,link/transport layer processing unit 102 and register 103. The physicallayer processing unit 101 executes high-rate serial data transfer(transmission/reception) via the SATA bus 30. At this time, the datatransfer rate is 1.5 Gbps (gigabits per second). The physical layerprocessing unit 101 interprets data received from the SATA bus 30, andtransmits the data to the link/transport layer processing unit 102 inaccordance with the interpretation result. Further, the physical layerprocessing unit 101 transmits a serial data signal in response to arequest from the link/transport layer processing unit 102. The physicallayer processing unit 101 includes an output amplifier 101 a. The outputamplifier 101 a amplifies a serial data signal supplied from thelink/transport layer processing unit 102, and outputs the resultantsignal to the SATA bus 30. The gain of the output amplifier 101 a isadjustable from by the user (manufacturer) using, for example, thejumper unit. The link/transport layer processing unit 102 includes alink layer processing unit and transport layer processing unit, whichare not shown. The respective link layer processing unit supplies thephysical layer processing unit 101 with a request to output a signal, inresponse to a request from the transport layer processing unit. Further,the link layer processing unit supplies the transport layer processingunit with data transmitted from the physical layer processing unit 101.The transport layer processing unit performs interface conversionbetween the ATA interface and SATA interface. The ATA and SATAinterfaces are implemented by the link/transport layer processing unit102 and the physical layer processing unit 101. The register 103 is usedto hold, for example, gain values. Each gain value is an amplitudeparameter for determining the amplitude (output level) of a serial datasignal output from the output amplifier 101 a. The gain of the outputamplifier 101 a is set as a gain value in the register 103.

The configuration of the HDD 10 except for the SATA bridge 100 will bedescribed. The HDD 10 has a disk 111 as a recording medium. At least onesurface of the disk 111 is a recording surface on which data ismagnetically recorded. A head (magnetic head) 112 opposes the at leastone recording surface of the disk 111. In the example of FIG. 1, the HDD10 includes only one head 112 for facilitating the explanation. However,in general, both surfaces of the disk 111 serve as recording surfaces,which respective opposing heads. Further, in the example of FIG. 1, theHDD 10 includes a single disk 111. However, it may include a pluralityof disks 111 stacked on each other.

The disk 111 is spun at high speed by a spindle motor (SPM) 113. Thehead 112 is used to read and write data from and to the disk 111. Thehead 112 is attached to the tip of an actuator 114. The actuator 114 hasa voice coil motor (VCM) 115. The actuator 114 is driven by the VCM 115,thereby radially moving the head 112 over the disk 111. As a result, thehead 112 is positioned on a target track. The SPM 113 and VCM 115 arepowered by respective driving currents (SPM current and VCM current)supplied from a motor driver IC 116. The motor driver IC 116 suppliesthe SPM 113 with an SPM current designated by a CPU 122, and suppliesthe VCM 115 with a VCM current designated by the CPU 122.

The head 112 is connected to a head IC (head amplifier circuit) 117. Thehead IC 117 includes a read amplifier for amplifying a read signal readby the head 112, and a write amplifier for converting write data into awrite current. The head IC 117 is connected to a read/write IC(read/write channel) 118. The read/write IC 118 is a signal processingdevice for performing various signal processes, such asanalog-to-digital conversion of a read signal, encoding of write data,decoding read data, etc. The read/write IC 118 is connected to a harddisk controller (HDC) 119.

The HDC 119 has a disk control function for controlling data transferfrom and to the disk 111. The HDC 119 includes an ATA interface. Thatis, the HDC 119 has an ATA interface control function for receiving andtransmitting commands (such as read/write commands) and data from and tothe host 20 via an ATA bus 120. However, in the embodiment that includesthe HDD 10 having a SATA interface, the HDC 119 is connected to the SATAbridge 100 via the ATA bus 120, which differs from conventional HDDs.The HDC 119 is connected to the host 20 via the SATA bridge 100 and SATAbus 30.

The HDD 10 further comprises a jumper unit 121. The jumper unit 121 isused as a cable length designation unit (cable length designation means)for designating the cable length of the SATA bus 30. The jumper unit 121includes at least one jumper. FIG. 2 shows a configuration example ofthe jumper unit 121. In the example of FIG. 2, the jumper unit 121includes two jumpers 121A and 121B. FIG. 3 shows the relationshipbetween each combination of the states (open or shorted) of the jumpers121A and 121B and the cable length designated by each combination. Inthe examples of FIG. 3, if both jumpers 121A and 121B assume an openstate, the cable length is 10 cm, if the jumpers 121A and 121B assumeopen and shorted states, respectively, the cable length is 30 cm, and ifthe jumpers 121A and 121B assume shorted and open states, respectively,the cable length is 60 cm. Further, no definition is given to the casewhere both jumpers 121A and 121B assume a shorted state. As is apparent,a larger number of jumpers may be employed and the larger the number ofjumpers the jumper unit 121 includes, the larger number of cable lengthsusers can designate. Further, a DIP switch may be used as the cablelength designation unit, instead of the jumper unit 121. The DIPswitches may designate as many values of gain as desired such as 8values or 16 values.

The CPU 122 is a main controller in the HDD 10. The CPU 122 includes anonvolatile memory prestoring a control program, such as a flash ROM(FROM) 123. The FROM 123 is programmable nonvolatile memory. The CPU 122controls each element in the HDD 10 in accordance with the controlprogram prestored in the FROM 123. Upon activation of the HDD 10, theCPU 122 reads the state of the jumper unit 121. The CPU 122 determinesthe gain of the output amplifier 101 a from the cable length designatedby the state of the jumper unit 121. The CPU 122 sets the determinedgain value in the register 103. To determine the gain value, the CPU 122refers to a gain table 123 a stored in the FROM 123. The gain table 123a stores gain values for the output amplifier 101 a in relation to thestates the jumper unit 121 can assume. FIG. 4 shows a data structureexample of the gain table 123 a in which the gain values are G10, G30and G60 corresponding to cable lengths of 10, 30 and 60 respectively.

As described above, each state of the jumper unit 121 designates thecorresponding cable length of the SATA bus 30. The signal attenuationfactor of the SATA bus 30 depends upon the cable length of the SATA bus30. Accordingly, determination of the gain of the output amplifier 101 ain accordance with a cable length designated by a state that the jumperunit 121 can assume means the determination of a gain in light of thesignal attenuation factor of the SATA bus 30. The gain (amplitudeparameter value) of the output amplifier 101 a determines a signalamplitude at the transmit side. Therefore, in the embodiment, the gainof the output amplifier 101 a is set to an optimal value (e.g., G10, G30or G60) that is determined in light of the signal attenuation factor ofthe SATA bus 30 and that enables the signal amplitude at a receive sideto meet the SATA interface standards. The reason why the gain of theoutput amplifier 101 a is determined in light of the attenuation factordetermined by the cable length will be described below.

FIG. 5 illustrates changes at a receive side in the amplitude of aserial data signal due to changes in cable length. In the case of FIG.5, it is assumed that the serial data signal has been output with anamplitude (peak-to-peak amplitude) of, for example, 400 mV, from theoutput amplifier 101 a. As is evident from FIG. 5, even if the amplitude(output signal amplitude) of a serial data signal output from a transmitside is constant, the amplitude (input signal amplitude) of the signalvaries depending upon the cable length when it is input to a receiveside. The longer the cable length of the SATA bus 30, the higher thesignal amplitude attenuation factor. In the example of FIG. 5, when thecable length is 10 cm, the signal amplitude at the receive side is about380 mV. This amplitude is lower by about 5% than the amplitude (400 mV)at the transmit side. When the cable length is 30 cm, the signalamplitude at the receive side is about 360 mV, which is further lowerthan the amplitude (400 mV) at the transmit side. That is, theattenuation factor is about 10%. In the case of a cable length of 60 cm,the signal amplitude at the receive side is about 320 mV, which means anattenuation of about 20%. Therefore, unless the signal amplitude at thetransmit side is appropriately set in accordance with the cable lengthof the SATA bus 30, the signal amplitude at the receive side may falloutside the standard range, resulting in reception of incorrect data. Toavoid this, a gain table 123 a having the data structure as shown inFIG. 4 is prepared so that the gain of the output amplifier 101 a isdetermined in light of differences in attenuation factor due todifferences in cable length.

Referring again to FIG. 1, the host 20 comprises a main host unit 21,SATA bridge 22 and jumper unit 23. The main host unit 21 corresponds toa conventional host that performs parallel data transfer using an ATAinterface. The SATA bridge 22 and jumper unit 23 have the samestructures as the SATA bridge 100 and jumper unit 121 included in theHDD 10. The SATA bridge 22 includes an output amplifier 221 and register223 corresponding to the output amplifier 101 a and register 103 of theSATA bridge 100. The main host unit 21 includes, for example, a flashROM (FROM) 210 as a programmable nonvolatile memory. The FROM 210 storesa gain table 210 a that corresponds to the gain table 123 a incorporatedin the CPU 122 of the HDD 10. In the embodiment, the contents of thegain table 210 a are the same as those of the gain table 123 a shown inFIG. 4. Upon activation of the host 20, the main host unit 21 reads thestate of the jumper unit 23. The main host unit 21 acquires, from thegain table 210 a, the gain of the output amplifier 221 determined fromthe cable length designated by the state of the jumper unit 23 (e.g.,G10, G30 or G60). The main host unit 21 sets the acquired gain value inthe register 203. The main host unit 21 and SATA bridge 22 are connectedby an ATA bus 24. The ATA bus 24 corresponds to the ATA bus 120 of theHDD 10. Instead of the ATA bus 24 or 120, a peripheral componentinterconnect (PCI) bus, for example, which conforms to the ATA bus, maybe used. In this case, the SATA interface control circuit realized bythe SATA bridge 22 or 100 can be provided in a PCI bridge.

Referring now to the flowchart of FIG. 6, the operation of the HDD 10during activation will be described. Firstly, assume that the HDD 10 isused as storage for the host 20 (in this case, a personal computer).Different computer manufacturers may choose to arrange their host SATAbridge 22 at different distances from their HDD units 10 depending onthe particular geometry and layout of the PC adopted by each individualcomputer manufacturer or assembler. Thus the SATA cable 30 will havedifferent lengths depending on the layout chosen by the manufacturer. Inthis case, a user (the manufacturer of the computer) operates the jumperunit 121, which serves as a cable length designation device, todesignate the cable length of the SATA bus 30 that is used to connectthe HDD 10 to the host 20. When the cable length of the SATA bus 30 isas short as 10 cm, both the jumpers 121A and 121B of the jumper unit 121should be set to an open state, thus resulting in the gain of G10 beingselected. When the cable length of the SATA bus 30 is as long as 60 cm,the jumpers 121A and 121B of the jumper unit 121 should be set to ashorted state and open state, respectively, thus resulting in the gainof G60 being selected.

During the activation of the HDD 10, the CPU 122 of the HDD 10 reads thestates of the jumpers 121A and 121B of the jumper unit 21 (step S1), andrefers to the gain table 123 a to select the gain value corresponding tothe read states of the jumpers 121A and 121B (step S2). Thus, the CPU122 in cooperation with the gain table 123 a, serves as an amplitudeparameter generation device. The gain table 123 a serves as an amplitudeparameter storage device, and the CPU 122 serves as an amplitudeparameter selection device since it selects that appropriate amplitudefrom the gain table 123 a. When the gain table 123 a has the datastructure as shown in FIG. 4, if the jumpers 121A and 121B are in theshorted and open states, respectively, the CPU 122 selects G60 as theoptimal gain of the output amplifier 101 a in light of the signalattenuation factor assumed when the cable length of the SATA bus 30 is60 cm. This is equivalent to the generation, by the CPU 122, of theoptimal gain value corresponding to the cable length designated by thestates of the jumpers 121A and 121B, as the amplitude parameter valuefor determining the amplitude of a serial data signal output from theoutput amplifier 101 a. The CPU 122 sets the selected gain value in theregister 103 of the SATA bridge 100 (step S3).

Assume that in this state, the head 112 has read a data signal recordedin the disk 111. The signal (read signal) read by the head 112 isamplified by the head IC 117. The read signal amplified by the head IC117 is converted into digital data by the read/write IC 118. The data issent to the ATA bus 120, where it is transferred by parallel transferfrom the HDC 119 to the host 20. The data sent from the HDC 119 to theATA bus 120 is converted by the link/transport layer processing unit 102into a serial data signal conformable to the SATA interface standards.The resultant serial data signal is sent to the physical layerprocessing unit 101. The output amplifier 101 a in the physical layerprocessing unit 101 amplifies the serial data signal with the gaindesignated by the gain value set in the register 103, and outputs thesignal to the SATA bus 30.

The serial data signal output from the output amplifier 101 a to theSATA bus 30 is transferred to the host 20 via the SATA bus 30. Theserial data signal output to the SATA bus 30 is attenuated by the SATAbus 30 before it reaches the receive side (the input terminal of thehost 20). The attenuation factor varies if the cable length of the SATAbus 30 is varied, as is shown in FIG. 5. Therefore, unless the amplitudeof a signal output from the transmit side is set to an appropriate valueaccording to the cable length of the SATA bus 30, the amplitude of thesignal may fall outside the standard range when it is received at thereceive side. In this case, the signal is not correctly received. In theembodiment, however, the gain of the output amplifier 101 a is set,through the register 103, to an optimal value that enables the signalamplitude at the receive side to fall within the standard range, inaccordance with the cable length of the SATA bus 30 corresponding to thestate of the jumper unit 121 designated by a user. Accordingly, even ifthe serial data signal is attenuated by the SATA bus 30 before itreaches the input terminal of the host 20, the signal amplitude at theinput terminal of the host 20 can be made to fall within the standardrange.

Similarly, the user operates the jumper unit 23 provided in the host 20to make it designate the cable length of the SATA bus 30. Duringactivation of the host 20, the main host unit 21 selects, from the gaintable 210 a, the gain value corresponding to the cable length designatedby the state of the jumper unit 23. The main host unit 21 sets theselected gain value in the register 223. As a result, also in the host20, the gain of the output amplifier 221 can be set to an optimal valuedetermined from the set cable length.

[Modification]

Referring again to FIG. 1 for facilitating the explanation, amodification of the embodiment will be described. In the modification,when a user designates the cable length of the SATA bus 30, they do notalways have to use the jumper units 121 and 23. For example, they canalso designate the cable length by operating input means (such as akeyboard or mouse). The user (e.g., manufacturer of the PC) may use themouse to select among a drop down list of preset cable lengths or mayuse the keyboard to input any numerical value of cable length. In thelatter case, the gain value may be obtained from interpolating betweenthe points of FIG. 5 closest to the entered values, or if FIG. 5 isrepresented by a formula (as for example a straight line), the gainvalue may be calculated using the formula stored in the FROM 210 withthe entered length values as inputs. In the modification, it issufficient if the gain value corresponding to the designated cablelength is set in the registers 223 and 103 of the SATA bridges 22 and100. To this end, the main host unit 21 executes the commands forsetting, in the registers 223 and 103 of the SATA bridges 22 and 100,the gain value corresponding to the cable length designated by the user.

Referring to the flowchart of FIG. 7, the gain setting process by themain host unit 21 will be descried. Assume here that the host 20 is in acable length input mode designated by a user, and then a cable length isinput by the user. In the cable length input mode, the main host unit 20may display a cable length selection dialog box to enable the user toselect a desired cable length therefrom. When a cable length is input(selected) in the cable length input mode (step S10), the main host unit21 stores the information indicating the input cable length, i.e., theinformation indicating the cable length designated by the user, in, forexample, a cable length storing area pre-secured in the FROM 210 (stepS11). In this modification of the embodiment the standard cable lengthinformation is stored in the cable length storing area of the FROM 210when the host 20 is shipped. The information stored in the cable lengthstoring area was updated at the step S11 to the newest one designated bythe user.

Subsequently, the main host unit 21 determines the gain valuecorresponding to the cable length indicated by the newest cable lengthinformation stored in the FROM 210, referring to the gain table 210 astored in the FROM 210 (step S12). The main host unit 21 then executes afirst gain-setting command for setting the determined gain value in theregister 223 of the SATA bridge 22 (step S13). As a result, the gain ofthe output amplifier 221 in the SATA bridge 22 is adjusted to the valueset in the register 223. In this state, the main host unit 21 sends asecond gain-setting command (a particular command) to the ATA bus 24 totransfer it to the HDD 10 (step S14). The second gain-setting command isused for instructing the HDD 10 to set the gain value determined at thestep S12 in the register 103 of the SATA bridge 100. The secondgain-setting command includes the gain value determined at the step S12.

The second gain-setting command output from the main host unit 21 to theATA bus 24 is transferred to the SATA bridge 22. The SATA bridge 22converts the second gain-setting command into a serial data signal(serial command signal) conformable to the SATA interface standards. Thesecond gain-setting command as the serial data signal is amplified bythe output amplifier 221 with the gain set in the register 223, andoutput to the SATA bus 30. The gain set in the register 223 matches thecable length of the SATA bus 30.

The second gain-setting command sent from the output amplifier 221 tothe SATA bus 30 is transferred by serial transfer to the SATA bridge lobof the HDD 10. The SATA bridge 100 receives the second gain-settingcommand transferred by serial transfer via the SATA bus 30. It isexpected that the amplitude of the received second gain-setting command(i.e., the received serial data signal) falls within the SATA interfacestandard range. This is because the second gain-setting command sentfrom the output amplifier 221 of the SATA bridge 22 at the transmit side(host 20) to the SATA bus 30 is obtained by amplification made with thegain that matches the cable length of the SATA bus 30. The SATA bridge100 converts the received second gain-setting command into a serial datasignal (serial command signal) conformable to the SATA interfacestandards. The second gain-setting command as the serial data signal isreceived by the CPU 122 via the ATA bus 120 and HDC 119 (step S15). Inaccordance with the second gain-setting command transferred from thehost 20, the CPU 122 sets the gain value, included in the command, inthe register 103 of the SATA bridge 100 (step S16).

In the above modification, the newest cable length informationdesignated by a user can be stored in the FROM 210 of the main host unit21 of the host 20. Accordingly, the above-mentioned steps S12 to S16 canalso be executed during the activation of the host 20, assuming thecorrect cable length has been previously input by the user in a previousstart-up or activation operation. In other words, during the activationof the host 20, the second gain-setting command can also be transferredto the HDD 10 after the gain value corresponding to the cable lengthindicated by the newest cable length information is set in the register223. This procedure can be executed even in the case shown in FIG. 1where the host 20 has the jumper unit 23. Specifically, during theactivation of the host 20, the second gain-setting command can also betransferred to the HDD 10 after the main host unit 21 sets, in theregister 223, the gain value corresponding to the state of the jumperunit 23. In this case, there is no need for providing the jumper unit121 in the HDD 10.

The above-described embodiment is directed to a system equipped with anHDD (magnetic disk drive). However, the present invention is alsoapplicable to a system equipped with another type of disk drive, such asan optical disk drive, magneto-optical disk drive, etc. It is sufficientif the disk drive has a SATA interface. The present invention is furtherapplicable to a system equipped with an electronic device other thandisk drives, if only the electronic device has a SATA interface.

Additional advantages and modifications will readily occur to thoseskilled in the art. Therefore, the invention in its broader aspects isnot limited to the specific details and representative embodiments shownand described herein. Accordingly, various modifications may be madewithout departing from the spirit or scope of the general inventiveconcept as defined by the appended claims and their equivalents.

1. An electronic device with a serial ATA interface, comprising: asignal output device outputting a serial data signal to a serial ATA buswhich connects the electronic device to another electronic device, saidanother electronic device including another serial ATA interface; acable length designation device for designating a cable length of theserial ATA bus in accordance with a user operation; an amplitudeparameter generation device for generating, in accordance with the cablelength designated by the cable length designation device, an amplitudeparameter for determining an amplitude of the serial data signal whenthe signal output device outputs the serial data signal, the amplitudedetermined by the amplitude parameter enabling the amplitude of theserial data signal to fall within a range, stipulated in serial ATAinterface standards, when said another electronic device receives theserial data signal; and a signal amplitude adjusting device foradjusting the serial data signal to the amplitude determined by theamplitude parameter, when the signal output device outputs the serialdata signal.
 2. The electronic device according to claim 1, wherein theamplitude parameter generation device includes: an amplitude parameterstorage device for storing amplitude parameters in relation torespective cable lengths, each of the amplitude parameters determiningan amplitude of the serial data signal when the signal output deviceoutputs the serial data signal, the amplitude determined by each of theamplitude parameters enabling the amplitude of the serial data signal tofall within the range, stipulated in the serial ATA interface standards,when said another electronic device receives the serial data signal; anda selection device for selecting, from the amplitude parameter storagedevice, the amplitude parameter corresponding to the cable lengthdesignated by the cable length designation device.
 3. The electronicdevice according to claim 1, wherein the cable length designation deviceincludes a jumper unit.
 4. The electronic device according to claim 1,wherein the signal amplitude adjusting device includes a register whichholds the amplitude parameter generated by the amplitude parametergeneration device.
 5. The electronic device according to claim 4,further comprising a bridge device including the signal output deviceand the register, the bridge device connecting a parallel interface busto the serial ATA bus, the bridge device performing interface conversionbetween an interface corresponding to the parallel interface bus and aserial ATA interface corresponding to the serial ATA bus, the parallelinterface bus being a parallel ATA bus or a bus conformable to theparallel ATA bus.
 6. The electronic device according to claim 1, whereinthe signal output device includes a variable-gain output amplifier. 7.The electronic device according to claim 6, wherein: the amplitudeparameter generated by the amplitude parameter generation deviceindicates a gain of the output amplifier; and the signal amplitudeadjusting device sets the gain of the output amplifier as the amplitudeparameter generated by the amplitude parameter generation device.
 8. Theelectronic device according to claim 7, wherein the signal amplitudeadjusting device includes a register for holding the amplitude parametergenerated by the amplitude parameter generation device.
 9. Theelectronic device according to claim 1, wherein: the electronic deviceis a disk drive; and said another electronic device is a host devicewhich utilizes the disk drive as a storage device.
 10. A systemcomprising: a first electronic device with a serial ATA interface; asecond electronic device with a serial ATA interface; and a serial ATAbus connecting the first electronic device to the second electronicdevice, the first electronic device including: a first signal outputunit for outputting a first serial data signal to the serial ATA bus;and a first signal amplitude adjusting device for adjusting the firstsignal output unit to make the first serial data signal have anamplitude determined by a received amplitude parameter when the firstsignal output unit outputs the first serial data signal, the secondelectronic device including: a second signal output unit for outputtinga second serial data signal to the serial ATA bus; a cable lengthdesignation device for designating a cable length of the serial ATA busin accordance with a user operation; an amplitude parameter generationdevice for generating, in accordance with the cable length designated bythe cable length designation device, an amplitude parameter fordetermining an amplitude of the second serial data signal when thesecond signal output unit outputs the second serial data signal, theamplitude determined by the amplitude parameter enabling the amplitudeof the second serial data signal to fall within a range, stipulated inserial ATA interface standards, when the first electronic devicereceives the second serial data signal output from the second signaloutput unit; a second signal amplitude adjusting device for adjustingthe second signal output unit to make the second serial data signal havean amplitude determined by the amplitude parameter when the secondsignal output unit outputs the second serial data signal; and saidsecond signal output unit transferring a particular command to the firstelectronic device via the serial ATA bus, the particular commandincluding the amplitude parameter generated by the amplitude parametergeneration device, the particular command being used to supply theamplitude parameter included therein to the first signal amplitudeadjusting device of the first electronic device as the receivedamplitude parameter.
 11. The system according to claim 10, wherein theamplitude parameter generation device includes: an amplitude parameterstorage device for storing amplitude parameters in relation torespective cable lengths, each of the amplitude parameters determiningan amplitude of the second serial data signal when the second signaloutput unit outputs the second serial data signal to the serial ATA bus,the amplitude determined by each of the amplitude parameters enablingthe amplitude of the second serial data signal to fall within the range,stipulated in the serial ATA interface standards, when the firstelectronic device receives the second serial data signal output from thesecond signal output unit to the serial ATA bus; and a selection devicefor selecting, from the amplitude parameter storage device, theamplitude parameter corresponding to the cable length designated by thecable length designation device.
 12. The system according to claim 10,wherein the cable length designation device includes a jumper unit. 13.The system according to claim 10, wherein: the first signal amplitudeadjusting device includes a first output level adjusting register whichholds the received amplitude parameter included in the particularcommand; and the cable length designation device includes a jumper unit.14. The system according to claim 13, wherein said jumper unit providesat least three choices of said cable length.
 15. The system according toclaim 10, wherein: the first electronic device is a disk drive; and thesecond electronic device is a host device which utilizes the disk driveas a storage device.
 16. The system according to claim 10, wherein saidcable length designating device comprises a keyboard.
 17. The systemaccording to claim 10, wherein said cable length designating devicecomprises a mouse.
 18. The system according to claim 10, furthercomprising a first bridge device comprising the first signal outputdevice and a first register for storing said received amplitudeparameter, the bridge device connecting the serial ATA bus to a parallelinterface bus, the bridge device performing interface conversion betweenan interface corresponding to the parallel interface bus and a serialATA interface corresponding to the serial ATA bus, the parallelinterface bus being a parallel ATA bus or a bus conformable to theparallel ATA bus.
 19. The system according to claim 18, wherein: thefirst electronic device is a disk drive; and the second electronicdevice is a host device which utilizes the disk drive as a storagedevice.
 20. A method of adjusting an amplitude of a serial data signal,employed in a system in which a first electronic device with a serialATA interface is connected to a second electronic device with a serialATA interface by a serial ATA bus, the first electronic device includingan signal output device for outputting a serial data signal to theserial ATA bus, and a signal amplitude adjusting device for adjusting anamplitude of the serial data signal in accordance with an amplitudeparameter when the signal output device outputs the serial data signal,the method comprising: generating, in accordance with a cable lengthdesignated by a user operation, an amplitude parameter for determiningthe amplitude of the serial data signal when the signal output deviceoutputs the serial data signal, the amplitude determined by theamplitude parameter enabling the amplitude of the serial data signal tofall within a range, stipulated in serial ATA interface standards, whenthe second electronic device receives the serial data signal; andsetting the generated amplitude parameter in the signal amplitudeadjusting device.
 21. The method according to claim 20, wherein thegenerating includes selecting, from an amplitude parameter storagedevice, an amplitude parameter corresponding to the cable lengthdesignated by the user operation, the amplitude parameter storage devicestoring amplitude parameters in relation to respective cable lengths,each of the amplitude parameters determining an amplitude of the serialdata signal when the signal output device outputs the serial data signalto the serial ATA bus, the amplitude determined by each of the amplitudeparameters enabling the amplitude of the serial data signal to fallwithin a range, stipulated in serial ATA interface standards, when thesecond electronic device receives the serial data signal.
 22. The methodaccording to claim 20, further comprising reading a state of a jumperunit which designates the cable length, and wherein the generatingincludes generating an amplitude parameter corresponding to the cablelength designated by the read state of the jumper unit.
 23. A method ofadjusting an amplitude of a serial data signal, employed in a system inwhich a first electronic device with a serial ATA interface is connectedto a second electronic device with a serial ATA interface by a serialATA bus, the first electronic device including a first signal outputunit for outputting a first serial data signal to the serial ATA bus,and a first signal amplitude adjusting device for adjusting an amplitudeof the first serial data signal in accordance with a received amplitudeparameter when the first signal output unit outputs the first serialdata signal, the second electronic device including a second signaloutput unit for outputting a second serial data signal to the serial ATAbus, and a second signal amplitude adjusting device for adjusting anamplitude of the second serial data signal in accordance with anamplitude parameter when the second signal output unit outputs thesecond serial data signal, the method comprising: generating, inaccordance with a cable length designated by a user operation, anamplitude parameter for determining the amplitude of the second serialdata signal when the second signal output unit outputs the second serialdata signal, the amplitude determined by the amplitude parameterenabling the amplitude of the second serial data signal to fall within arange, stipulated in serial ATA interface standards, when the firstelectronic device receives the second serial data signal; setting thegenerated amplitude parameter in the second signal amplitude adjustingdevice; causing the second signal output unit to transfer a particularcommand to the first electronic device via the serial ATA bus, theparticular command including the generated amplitude parameter, theparticular command being used to supply the amplitude parameter includedtherein as the received amplitude parameter to the first signalamplitude adjusting device of the first electronic device; and setting,in the first signal amplitude adjusting device, the received amplitudeparameter included in the particular command, in accordance with theparticular command transferred to the first electronic device.
 24. Anelectronic device with a serial ATA interface, comprising: a signaloutput device which includes a processing unit for converting serialdata to parallel data and parallel data to serial data, said signaloutput device outputting a serial data signal to a serial ATA bus whichconnects the electronic device to another electronic device, saidanother electronic device including another serial ATA interface; acable length designation device for designating a parameterrepresentative of a cable length of the serial ATA bus in accordancewith a user operation; and a device, responsive to the designatedparameter representative of cable length, for adjusting an amplitude ofthe serial data signal transmitted from the outputting device such thatthe amplitude of the serial data signal received by the anotherelectronic device falls within a range, stipulated by a serial ATAinterface standard.
 25. An electronic device with a serial ATAinterface, comprising: a signal output device which includes aprocessing unit for converting serial data to parallel data and paralleldata to serial data, said signal output device outputting a serial datasignal to a serial ATA bus which connects the electronic device toanother electronic device, said another electronic device includinganother serial ATA interface; a cable length designation means fordesignating a parameter representative of a cable length of the serialATA bus in accordance with a user operation; and means, responsive tothe designated parameter representative of cable length, for adjustingan amplitude of the serial data signal transmitted from the outputtingdevice such that the amplitude of the serial data signal received by theanother electronic device falls within a range, stipulated by a serialATA interface standard.